package com.company.strs;

import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

public class LongestSubStr {


    /**
     * 给定一个字符串，请你找出其中不含有重复字符的 最长子串 的长度。
     */
    public int lengthOfLongestSubstring(String s) {
        if (s.length() < 2) {
            return s.length();
        }

        int l=0;
        char[] chars = s.toCharArray();
        for (int offset = 0; offset < s.length(); offset++) {
            char c = chars[offset];
            boolean getL = false;
            for (int i = offset+1; i < chars.length; i++) {
                if (c == chars[i]) {//如果找到相同的字符  找到了以chars[offset]开头的最长子串长度
                    getL = true;
                    if(l < i - offset) l = i-offset; //记录当前子串长度
                    break;
                }

            }
            if (!getL) {//如果没有找到相同的字符 说明以 chars[offset]开头的最长子串长度为 s.lengt - offset
                if(l<chars.length - offset) l = chars.length - offset;
            }
        }
        if (l==0) {
            return chars.length;
        }
        return l;
    }




}
